package com.demo.demok4j.aspect;

import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;

import java.util.Date;

/**
 * @author lzh
 * @date 2020/8/5 - 22:32
 */
@Slf4j
@Component
@Aspect // 标注为切面
public class LogAspect {

    // 切入点表达式，表示切入点为控制器包中的所有方法
    @Pointcut("within(com.demo.demok4j.api..*)")
    public void LogAspect() {
    }

    // 切入点之前执行
    @Before("LogAspect()")
    public void doBefore(JoinPoint joinPoint) {

        log.info("访问时间：{}--访问接口:{}", new Date(), joinPoint.getSignature());
    }
}
